Universal content architecture system

ABSTRACT

One or more systems, computer-storage media, and methods are described for receiving, storing, and distributing clinical information to clients subscribed to or granted access to the information. Initially, content packages containing clinical information are received and stored. Datasets are extracted from the content packages and stored. The datasets and content packages are made available to clients via an online marketplace which enables one or more clients to edit, update, or request to merge a plurality of datasets.

BACKGROUND

Many clinical care providers consume clinical information on a frequentbasis. Oftentimes these clinicians gather clinical information from aplurality of sources, such as, for example, research institutes orelectronic medical record (EMR) providers. However, gathering suchinformation is not always a simple task. In particular, many cliniciansmust learn when new clinical information becomes available, know whereto find the information, and independently acquire and review theinformation. This process may lead to inefficient and inconsistentdelivery of medical treatment to patients.

SUMMARY

This summary is provided to introduce a selection of concepts in asimplified form that are further described below in the detaileddescription. This summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter. The present invention is defined by the claims.

In brief and at a high level, this disclosure describes, among otherthings, methods, computer-storage media, and systems for deliveringclinical information via an online marketplace to clients subscribed tothe information. Content packages are received at a universal contentarchitecture (UCA) system from a plurality of content providers. Thecontent providers may be located globally and/or regionally and thecontent packages may contain both clinical and non-clinical information.A series of validation steps are taken with respect to the contentpackages, including, for example, security, structural and contentvalidation steps. Once validated, datasets contained within the contentpackages are extracted, stored, and published in the online marketplacefor client purchase and consumption. Exemplary clients include careproviders, healthcare facilities, research and development teams, andthe global healthcare community. Exemplary content providers may includeregulatory agencies and health records companies. In some embodiments,content providers are clients and vice versa.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments are described in detail below with reference to the attacheddrawing figures, wherein:

FIG. 1 is a block diagram of an exemplary computing environment suitableto implement embodiments of the present invention;

FIG. 2 is a block diagram of an exemplary system for receiving anddelivering clinical information to clients, in accordance with anembodiment of the present invention;

FIG. 3 is an illustrative process-flow diagram that depicts a method ofreceiving and distributing clinical information to a client, inaccordance with an embodiment of the present invention;

FIG. 4 is an illustrative process-flow diagram that depicts a method ofautomatically communicating updated clinical information to a clientthat is subscribed to the information, in accordance with an embodimentof the present invention;

FIG. 5 depicts a flow diagram illustrating a method of facilitatingstorage and distribution of clinical content packages and datasets, inaccordance with an embodiment of the present invention;

FIG. 6 depicts a flow diagram illustrating a method of automaticallydistributing clinical information to a client that is subscribed to theinformation, in accordance with an embodiment of the present invention;and

FIG. 7 depicts an exemplary graphical user interface presenting adetailed view of an online marketplace, in accordance with an embodimentof the present invention;

FIG. 8 depicts an exemplary graphical user interface presenting adetailed view of an online marketplace, in accordance with an embodimentof the present invention; and

FIG. 9 depicts an exemplary graphical user interface presenting adetailed view of a subscription page that identifies a subscriber'spurchased content packages and datasets, in accordance with anembodiment of the present invention.

DETAILED DESCRIPTION

The subject matter of the present invention is described withspecificity herein to meet statutory requirements. However, thedescription itself is not intended to limit the scope of this patent.Rather, the inventors have contemplated that the claimed subject mattermight also be embodied in other ways, to include different steps orcombinations of steps similar to the ones described in this document, inconjunction with other present or future technologies. Moreover,although the terms “step” and/or “block” may be used herein to connotedifferent elements of methods employed, the terms should not beinterpreted as implying any particular order among or between varioussteps herein disclosed unless and except when the order of individualsteps is explicitly described.

Embodiments of the present invention are directed to methods, systems,and computer-storage media for receiving and distributing clinicalinformation to a plurality of clients. In one aspect, a content packageis received from a content provider via an online marketplace. Thecontent package may contain one or more datasets of clinicalinformation. The datasets are identified and extracted from the contentpackages. Two or more extracted datasets, or portions thereof, may bemerged together and reformatted to generate a derivative dataset. Thedatasets, derivative datasets, and content packages are saved, and,depending on the nature and type of information contained therein, maybe published in the online marketplace. Once published, clients may login to the online marketplace, search for and preview the datasets, andpurchase or subscribe to information contained within the contentpackages or datasets.

In another aspect, the present invention is directed to computer-storagemedia for automatically distributing, via an online marketplace, updatedclinical information to one or more clients subscribed to theinformation. Initially, a content package is received from a firstcontent provider. Upon receiving a request from a client to subscribe toat least a portion of the content package (e.g., a single dataset), theportion of the content package is identified, retrieved and distributedto the client. When the first content provider updates the contentpackage, the updated information may automatically be communicated tothe client. Additionally, the updated information may be used tosupplement or replace a portion of the content package to which itcorresponds.

In yet another aspect, the present invention is directed to a systemhaving a server that distributes clinical information to a client whenthe client requests the information. The server first receives a requestfrom a client for clinical information published in the onlinemarketplace. Subsequently, the server may determine that the clinicalinformation is stored in a content package or dataset, retrieve thecontent package or dataset, and distribute the content package ordataset to the client.

An exemplary computing environment suitable for use in implementingembodiments of the present invention is described below. FIG. 1 is anexemplary computing environment (e.g., medical-informationcomputing-system environment) with which embodiments of the presentinvention may be implemented. The computing environment is illustratedand designated generally as reference numeral 100. The computingenvironment 100 is merely an example of one suitable computingenvironment and is not intended to suggest any limitation as to thescope of use or functionality of the invention. Neither should thecomputing environment 100 be interpreted as having any dependency orrequirement relating to any single component or combination ofcomponents illustrated therein.

The present invention might be operational with numerous other purposecomputing system environments or configurations. Examples of well-knowncomputing systems, environments, and/or configurations that might besuitable for use with the present invention include personal computers,server computers, hand-held or laptop devices, multiprocessor systems,microprocessor-based systems, set top boxes, programmable consumerelectronics, network PCs, minicomputers, mainframe computers,distributed computing environments that include any of theabove-mentioned systems or devices, and the like.

The present invention might be described in the general context ofcomputer-executable instructions, such as program modules, beingexecuted by a computer. Exemplary program modules comprise routines,programs, objects, components, and data structures that performparticular tasks or implement particular abstract data types. Thepresent invention might be practiced in distributed computingenvironments where tasks are performed by remote processing devices thatare linked through a communications network. In a distributed computingenvironment, program modules might be located in association with localand/or remote computer storage media (e.g., memory storage devices).

With continued reference to FIG. 1, the computing environment 100comprises a computing device in the form of a control server 102.Exemplary components of the control server 102 comprise a processingunit, internal system memory, and a suitable system bus for couplingvarious system components, including data store 104, with the controlserver 102. The system bus might be any of several types of busstructures, including a memory bus or memory controller, a peripheralbus, and a local bus, using any of a variety of bus architectures.Exemplary architectures comprise Industry Standard Architecture (ISA)bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus,Video Electronic Standards Association (VESA) local bus, and PeripheralComponent Interconnect (PCI) bus, also known as Mezzanine bus.

The control server 102 typically includes therein, or has access to, avariety of non-transitory computer-readable media. Computer-readablemedia can be any available media that might be accessed by controlserver 102, and includes volatile and nonvolatile media, as well as,removable and nonremovable media. By way of example, and not limitation,computer-readable media may comprise non-transitory computer storagemedia and communication media. Computer storage media includes bothvolatile and nonvolatile, removable and non-removable media implementedin any method or technology for storage of information such ascomputer-readable instructions, data structures, program modules orother data. Computer storage media includes, but is not limited to, RAM,ROM, EEPROM, flash memory or other memory technology, CD-ROM, digitalversatile disks (DVD) or other optical disk storage, magnetic cassettes,magnetic tape, magnetic disk storage or other magnetic storage devices,or any other medium which can be used to store the desired informationand which can be accessed by control server 102. Communication mediatypically embodies computer-readable instructions, data structures,program modules or other data in a modulated data signal such as acarrier wave or other transport mechanism and includes any informationdelivery media. The term “modulated data signal” means a signal that hasone or more of its characteristics set or changed in such a manner as toencode information in the signal. By way of example, and not limitation,communication media includes wired media such as a wired network ordirect-wired connection, and wireless media such as acoustic, RF,infrared and other wireless media. Combinations of any of the aboveshould also be included within the scope of computer-readable media.

The control server 102 might operate in a computer network 106 usinglogical connections to one or more remote computers 108. Remotecomputers 108 might be located at a variety of locations in a medical orresearch environment, including clinical laboratories (e.g., moleculardiagnostic laboratories), hospitals and other inpatient settings,veterinary environments, ambulatory settings, medical billing andfinancial offices, hospital administration settings, home healthcareenvironments, and clinicians' offices. Clinicians may comprise atreating physician or physicians; specialists such as surgeons,radiologists, cardiologists, and oncologists; emergency medicaltechnicians; physicians' assistants; nurse practitioners; nurses;nurses' aides; pharmacists; dieticians; microbiologists; laboratoryexperts; laboratory technologists; genetic counselors; researchers;veterinarians; students; and the like. The remote computers 108 mightalso be physically located in nontraditional medical care environmentsso that the entire healthcare community might be capable of integrationon the network. The remote computers 108 might be personal computers,servers, routers, network PCs, peer devices, other common network nodes,or the like and might comprise some or all of the elements describedabove in relation to the control server 102. The devices can be personaldigital assistants or other like devices.

Computer networks 106 comprise local area networks (LANs) and/or widearea networks (WANs). Such networking environments are commonplace inoffices, enterprise-wide computer networks, intranets, and the Internet.When utilized in a WAN networking environment, the control server 102might comprise a modem or other means for establishing communicationsover the WAN, such as the Internet. In a networking environment, programmodules or portions thereof might be stored in association with thecontrol server 102, the data store 104, or any of the remote computers108. For example, various application programs may reside on the memoryassociated with any one or more of the remote computers 108. It will beappreciated by those of ordinary skill in the art that the networkconnections shown are exemplary and other means of establishing acommunications link between the computers (e.g., control server 102 andremote computers 108) might be utilized.

In operation, an organization might enter commands and information intothe control server 102 or convey the commands and information to thecontrol server 102 via one or more of the remote computers 108 throughinput devices, such as a keyboard, a pointing device (commonly referredto as a mouse), a trackball, or a touch pad. Other input devicescomprise microphones, satellite dishes, scanners, or the like. Commandsand information might also be sent directly from a remote healthcaredevice to the control server 102. In addition to a monitor, the controlserver 102 and/or remote computers 108 might comprise other peripheraloutput devices, such as speakers and a printer.

Although many other internal components of the control server 102 andthe remote computers 108 are not shown, such components and theirinterconnection are well known. Accordingly, additional detailsconcerning the internal construction of the control server 102 and theremote computers 108 are not further disclosed herein.

The computing environment 200 includes a data store 204, a universalarchitecture system 206, and a computing device 208, all incommunication with one another via a network 202. The network 202 mayinclude, without limitation, one or more secure local area networks(LANs) or wide area networks (WANs). The network 202 may be a securenetwork associated with a facility such as a healthcare facility. Thesecure network 202 may require that a user log in and be authenticatedin order to send and/or receive information over the network 202.

In some embodiments, one or more of the illustrated components/modulesmay be implemented as stand-alone applications. In other embodiments,one or more of the illustrated components/modules may be integrateddirectly into the operating system of the UCA system 206. Thecomponents/modules illustrated in FIG. 2 are exemplary in nature and innumber and should not be construed as limiting. Any number ofcomponents/modules may be employed to achieve the desired functionalitywithin the scope of embodiments hereof. Further, components/modules maybe located on any number of servers. By way of example only, the UCA 206might reside on a server, cluster of servers, or a computing deviceremote from one or more of the remaining components.

It should be understood that this and other arrangements describedherein are set forth only as examples. Other arrangements and elements(e.g., machines, interfaces, functions, orders, and groupings offunctions, etc.) can be used in addition to or instead of those shown,and some elements may be omitted altogether. Further, many of theelements described herein are functional entities that may beimplemented as discrete or distributed components or in conjunction withother components/modules, and in any suitable combination and location.Various functions described herein as being performed by one or moreentities may be carried out by hardware, firmware, and/or software. Forinstance, various functions may be carried out by a processor executinginstructions stored in memory.

The data store 204 is configured to store information for use by, forexample, the UCA system 206 and the end-user computing device 208. Theinformation stored in association with the data store 204 is configuredto be searchable for one or more items of information stored inassociation therewith. The information stored in association with thedata store 204 may comprise general information used by the UCA system206 and/or the end-user computing device 208.

In one aspect, the data store 204 is configured to store one or morecontent packages and/or datasets. A content package is a collection ofclinical information, health information, and/or documentation receivedfrom a content provider. Content packages may contain one or moredatasets, which typically hold smaller amounts of data than the contentpackage. A dataset is formatted as a single table of data, having, forexample, columns and rows. Datasets provide a convenient way ofretrieving clinical data without downloading an entire content package,which can be very large.

Exemplary information contained in one or both of a content package anddataset may include clinical terminologies, diagnostic code sets,clinical and/or referential data (e.g., drug warnings, side effects,pregnancy warnings, pharmacy and pharmacokinetics information, and thelike), coded workflow instructions, discharge instructions, care plans,immunization information, laboratory test result codes, procedure codes,encounter diagnosis codes, and the like. Datasets can contain anyarbitrary subset of data from one or more content packages. A datasetmay be created and labeled to address the specific needs of a contentconsumer or consumer group. For example, a dataset may contain a precisesubset of the terminology identifiers contained in a content package anda full set of clinical workflow instructions for a regional healthcarefacility.

The content and volume of information in the data store 204 are notintended to limit the scope of embodiments of the present invention inany way. Further, though illustrated as a single, independent component,the data store 204 may, in fact, be a plurality of storage devices, forinstance, a database cluster, portions of which may reside on the UCAsystem 206, the end-user computing device 208, and/or any combinationthereof.

As shown, the end-user computing device 208 includes the display screen209. The display screen 209 is configured to display information to auser of the end-user computing device 208. The user of the end-usercomputing device 208 may include a content provider or a client. Thus,the end-user computing device 208 may display information relevant tocommunications initiated by and/or received by the end-user computingdevice 218, such as, for example, graphical user interfaces foruploading content packages to an online marketplace, graphical userinterfaces for supplementing or removing content contained in a contentpackage, and graphical user interfaces for purchasing clinical and/ornon-clinical information contained in a content package or dataset.Embodiments are not intended to be limited to visual display but rathermay also include audio presentation, combined audio/visual presentation,and the like. The end-user computing device 208 may be any type ofdisplay device suitable for presenting a graphical user interface. Suchcomputing devices may include, without limitation, a computer, such as,for example, any of the remote computers 108 described above withreference to FIG. 1. Other types of display devices may include tabletPCs, PDAs, mobile phones, smart phones, as well as conventional displaydevices such as televisions. Interaction with the display screen 209 ofthe end-user computing device 208 may be through conventional methodssuch as a mouse or a touch pad; interaction with the display screen 209may also occur through the use of gestures such as tapping, swiping,flicking, pinching, and the like.

The computing system environment 200 is merely exemplary. While the UCAsystem 206 is illustrated as a single unit, it will be appreciated thatthe UCA system 206 is scalable. For example, the UCA system 206 may inactuality include a plurality of computing devices in communication withone another. Moreover, the data store 204, or portions thereof, may beincluded within, for instance, the UCA system 206 and the computingdevice 208 as a computer-storage medium. The single unit depictions aremeant for clarity, not to limit the scope of embodiments in any form.

As shown in FIG. 2, the UCA system 206 comprises a process managementcomponent 220, an application component 222, and an online marketplace224. In some embodiments, one or more of the components 220, 222, and224 may be implemented as stand-alone applications. In otherembodiments, one or more of the components 220, 222, and 224 may beintegrated directly into the operating system of a computing device suchas the remote computer 108 of FIG. 1 or the computing device 208. Itwill be understood that the components 220, 222, and 224 illustrated inFIG. 2 are exemplary in nature and in number and should not be construedas limiting. Any number of components may be employed to achieve thedesired functionality within the scope of embodiments hereof.

The process management component 220 is configured to receive contentpackages from a plurality of content providers. Upon receiving thecontent packages, the process management component 220 performs a seriesof validation steps, including, for example, security, structural andcontent validation steps. The security validation step ensures that thecontent packages are safe for storage and distribution within the UCAsystem 206. For example, the security validation step may includerunning a virus scan on all files contained within a content package.The structural validation step ensures that all uploaded contentpackages contain the correct amount of clinical and/or non-clinicalinformation. For example, a structural validation step may involvescanning a content package to make sure that each of ten expecteddatasets is contained therein. The content validation step ensures thatthe content package contains the correct type of information. Forexample, a content package expected to contain prescription druginformation will be validated for its inclusion of such information. Acontent package that fails at any validation step is not published inthe online marketplace 224. A notification may also be sent to a contentprovider when a content package is determined to be deficient in someway.

After validation, the process management component 220 is configured tomine the plurality of content packages stored in the UCA system 206 andextract datasets that comprise the content packages. Each contentpackage and extracted dataset is then stored in the data store 204. Thecontent packages and their extracted datasets may be stored inassociation with each other. Specifically, each extracted dataset may bestored in association with a computer-usable reference that describes,links to, or identifies the content package from which it was originallyextracted.

The process management component 220 is also configured to publish oneor more content packages and datasets in the online marketplace 224.Publication may be generally defined as a process of making a contentpackage or dataset available to at least one client via the onlinemarketplace 224. So, for example, a content package or dataset ispublished when a client can search for, review, preview, purchase orsubscribe to the information contained therein.

In some embodiments, the online marketplace 224 enables contentproviders to select a particular client or group of clients that maypurchase and/or edit their content packages and datasets. A contentprovider may also require, as a condition of submitting a contentpackage to the UCA 206, that the content provider is the only entitywith rights to edit the content package. Similarly, content providersmay select to publish only a portion of a content packet. For example, acontent provider may select to publish only individual datasets, ratherthan a complete content package.

Additionally, the process management component 220 is configured tomerge two or more datasets (or portions thereof), thereby generating aderivative dataset. Datasets may be merged based on requests receivedfrom a content provider or client. Datasets may also be automaticallymerged based on predetermined rules. Derivative datasets may beautomatically reformatted to eliminate duplicate information, change anorder in which information is presented, replace null or empty fieldvalues, and the like. The derivative datasets are stored and, in someembodiments, published in the online marketplace 224. Similarly, theprocess management component 220 is configured to merge informationcontained in one or more content packages, thereby generating derivativecontent packages. The derivative content packages are stored and, insome embodiments, published in the online marketplace 224.

The following example illustrates how a derivative dataset is createdand is used for illustrative purposes only. Assume the processmanagement component 220 receives two different content packages. Thefirst content package has a plurality of datasets associated with drugcontent information. The second content package has at least one datasetassociated with drug identifiers. The drug identifiers stored within thesecond content package satisfy a regulatory Meaningful Use Stage 2 finalrule requirement (i.e., the identifiers are properly coded) formedications and medication allergies. To ensure that the first contentpackage meets the regulatory requirement, the process managementcomponent 220 automatically extracts and maps the drug identifiers fromthe second content package to drug information stored in the firstcontent package. The process management component 220 then merges theextracted and mapped information to create a new derivative dataset. Forexample, the process management component 220 may extract generic drugIDs, drug synonym IDs, and product-level IDs from the first contentpackage, and map such information to MINs (multiple ingredient genericdrug IDs), INs (single ingredient generic drug IDs), PINs (precisesingle ingredient generic drug and salt IDs), and BNs (medication brandname IDs) from the second content package. The extracted information isthen merged to create a derivative dataset and may be made available viathe online marketplace 224.

The process management component 220 is also configured to activate oneor more editorial tools that allow a client or content provider to edita content package or dataset. In this way, the user (e.g., the client orcontent provider), via the online marketplace 224, may add, remove,replace, reformat, or take some other action with respect to informationstored in a content package or dataset. For example, a content providermay add one or more new rows and columns to a dataset. The editeddataset can then be saved as the most recent version of the datasetand/or as a replacement for the previous version of the dataset.

The process management component 220 is configured to receive a requestfrom a content provider to incorporate updated information into acontent package and/or dataset. The client may select the contentpackage or dataset from within the online marketplace 224 via an icon ora link directed to the content package or dataset. The client may alsocommunicate a unique identifier associated with the content package tothe UCA system 206. In some embodiments, the identifier is assigned tothe content package when the content package is uploaded andsubsequently communicated to the client. Once identified, the processmanagement component 220 retrieves the content package or dataset. Itthen supplements (i.e., adds or appends) the content package or datasetwith the updated information, uploads a new version of the contentpackage or dataset (i.e., with updated information already included), orreplaces existing portions of the content package or dataset with theupdated information. The updated information is then stored as a newversion of the content package or dataset (e.g., in association with) oras a replacement for the content package or dataset.

Derivative datasets may also be updated. In one embodiment, a derivativedataset is updated when a user edits or supplements the derivativedataset directly. In another embodiment, a derivative dataset is updatedwhen a user edits or appends one or more fields of an original datasetthat form a portion of the derivative dataset. As an example used forillustrative purposes only, assume dataset A and dataset B (and/orportions thereof) were merged to form derivative dataset C. Dataset A islater updated to include 100 new field entries and communicated to theUCA system 206. The 100 new field entries may automatically be mapped toand merged with the corresponding portions of dataset C.

The process management component 220 is also configured to determinethat a client is subscribed to a content package or dataset that hasrecently been updated. Initially, the process management component 220may determine that a content package or dataset has been updated. Itthen identifies clients subscribed to the content package or dataset. Aclient is subscribed to a content package and/or dataset when the clienthas purchased or been given indefinite or future access to the clinicalinformation contained therein. In one embodiment, the process managementcomponent 220 communicates a notification to the client informing theclient that an update has been received. The notification may include anidentifier that serves to identify the updated content package ordataset. The client can thereafter submit the identifier to the onlinemarketplace 224 or application component 222, and the applicationcomponent 222 will retrieve and deliver the updated information to theclient. As well, in some embodiments, the updated information iscommunicated automatically to a client subscribed to the updated datasetor content package.

The process management component 220 is also configured to communicateupdated information directly to an out-of-system database or electronicsystem. A supplier of an out-of-system database may request that theprocess management component 220 add updated information to itsout-of-system database directly. Upon receiving the updated information,the process management component 220 communicates the updatedinformation to the out-of-system database, integrates the updatedinformation into the out-of-system database, and reformats theout-of-system database.

The application component 222 is configured to receive a request forclinical information stored in one or more content packages or datasets,retrieve the information, and communicate it to the client via theonline marketplace 224 for editing and/or download. In some embodiments,the request includes an identifier that identifies the requested contentpackage and/or dataset. The application component 222 maps theidentifier to a content package, retrieves the content package, anddistributes it to the requesting client.

The online marketplace 224 is a web application configured to rendergraphical user interfaces that permit content providers to uploadcontent packages and/or merge or edit content packages or datasets. Theonline marketplace 224 is configured to enable settings that allow acontent provider to restrict publication of their content packages anddatasets to one or more clients. Similarly, the online marketplace 224is configured to enable settings that allow a content provider to set aprice or enter into a fee arrangement for distribution of a contentpackage and dataset. In some examples, content providers may set uplicense agreement terms specifying a period of time that a client hasbeen granted access to a content package or dataset. Content providersmay also set up parameters for one-time content downloads, fixed-termaccess (e.g., from Jan. 1, 2015 to Jan. 1, 2016), and perpetual (i.e.,unlimited) content access. The fee arrangements may be fixed ornon-fixed.

As explained in greater detail above, the process management component220 publishes content packages and/or datasets to the online marketplace224. The online marketplace 224 also receives requests from clients todownload, subscribe to and/or view non-restricted content packages anddatasets. In one embodiment, the client enters an identifier via theonline marketplace 224, and the application component 220 retrieves thecontent package or dataset associated with the identifier. For example,when a client is notified that a new version of dataset A is available,the client, having a subscription to dataset A, can submit dataset A'sidentifier to the online marketplace 224. In turn, the applicationcomponent 220 will locate dataset A, retrieve it, and communicate it tothe client. A client may also search for clinical information in the UCAsystem 206 using filters. Clients can filter results according to, forexample, geographic origin, language type, content type, and contentprovider. For example, a client can set filters to locate clinicalinformation written only in German. A client can also search usingkeywords. The online marketplace 224 receives the keyword(s),communicates it to the application component 222, and the applicationcomponent 222 retrieves a list of clinical packages or datasets, which,based on one or more algorithms, are deemed relevant to the keywordsearch. The retrieved clinical packages and/or datasets are thenpresented to the client on the end-user computing device 208. Clientscan also search for and retrieve portions of content packages (e.g.,only two out of ten datasets associated with a content package,including one dataset that relates to drug interactions and one datasetthat relates to allergy indications).

Turning to FIG. 7, FIG. 7 depicts an exemplary graphical user interface(GUI) 700 illustrating a detailed view of an online marketplace pagethat enables a user to search for and retrieve a content package. TheGUI 700 depicts a web browser 710 having a browser toolbar 712 thatenables a user to enter a uniform resource locator or a search query tolocate and access the online marketplace, such as online marketplace 224of FIG. 2. The GUI 700 also includes a headings portion 720 that allowsa user to select to view another portion of the online marketplace andnavigate away from the “search for content package” page 760. Asmentioned above, the content package search bar 730 includes a pluralityof filters, such as, for example, cultural (e.g., geographic andlanguage) and content provider filters. While not shown, the contentpackage search bar 730 may include a query box that allows a user toperform a keyword search for a content package. The search resultsportion 740 of GUI 700 may contain a list of search results 750 thatsatisfy the filter settings or are responsive to the search queriesentered by a user in content package search bar 730. Each search result750 may be presented in association with a cultural origination, name,and brief description of the content package. The search result 750 mayalso include a content provider name, the size of the content package,and the like.

Turning to FIG. 8, FIG. 8 depicts an exemplary graphical user interface(GUI) 800 illustrating a detailed view of an online marketplace pagethat enables a user to search for and retrieve a dataset. The GUI 800depicts a web browser 810 having a browser toolbar 812 that enables auser to enter a uniform resource locator or a search query to locate andaccess the online marketplace, such as online marketplace 224 of FIG. 2.The GUI 800 also includes a headings portion 820 that allows a user toselect to view another portion of the online marketplace and navigateaway from the “search for dataset” page 860. As mentioned above, thereis a dataset search bar 830 that includes a plurality of filters, suchas, for example, cultural and content provider filters. While not shown,the dataset search bar 830 may include a query box that allows a user toperform a keyword search for a dataset. The search results portion 840of GUI 800 may contain a list of search results 850 that satisfy thefilter settings or are responsive to the search queries entered by auser in dataset search bar 830. Each search result 850 may be presentedin association with cultural origination, content package origination,name, and brief description of the dataset. The search result 850 mayalso include a content provider name, the size of the dataset, and thelike.

Returning to FIG. 2, the online marketplace 224 is configured to renderGUIs that permit clients to view summaries of the content packages anddatasets to which they are subscribed. The online marketplace 224 isalso configured to render GUIs that enable clients to select to view acontent package or dataset and/or edit content packages and datasets.

Turning to FIG. 9, FIG. 9 depicts an exemplary graphical user interface(GUI) 900 illustrating a detailed view of an online marketplace pagethat enables a client to view its subscriptions to content packages anddatasets. The GUI 900 depicts a web browser 910 having has a browsertoolbar 912 that enables a client to enter a uniform resource locator ora search query to locate and access the online marketplace, such asonline marketplace 224 of FIG. 2. The “my subscriptions” page 920contains a content packages portion 930 and a datasets portion 940 thatrespectively display the client's content package and datasetsubscriptions. Exemplary categories used to summarize and identify thecontent packages and the datasets include culture 950 (e.g., geographiclocation or language), vendor 952 (e.g. content provider), product 954(e.g., information type and content), format 956, version 958, published960 (e.g., publication date), size 962, download link 964 (e.g., link toselect to download and/or view the content package), and owner 966(e.g., client) categories.

Turning to FIG. 3, an illustrative process-flow diagram, labeledgenerally as 300, is illustrated depicting a method of receiving anddistributing clinical information to clients in accordance with anembodiment of the present invention. The process-flow diagram includes acontent provider 330, a client 332, and a client 334. In reality, therecould be any number of content providers and clients. The contentprovider 330 and clients 332 and 334 are shown merely as examples. Asstated above, a content provider may include a non-human entity, such asan electronic medical record provider or a regulatory agency thatcollects, generates and/or stores clinical information. A contentprovider may also include a human entity, such as a physician orhospital administrator. Clients may similarly include human andnon-human entities. For example, the client may be computing devicehaving a processor and computer-storage media stored thereon andconfigured to send a request for and receive clinical information.

At a step 320, a content package 310 is uploaded to a universal contentarchitecture system, such as the UCA system 206 of FIG. 2. The contentpackage 310 is received at the online marketplace 224 (i.e., for manualrequests) or the application component 222 (i.e., for automatedrequests). At a step 322, the content package 310 is validated. Ifvalidated (i.e., at each of the security, content and structural steps),the process management component 220 publishes the content package. At astep 324, a database 312 of clinical information may be extracted fromthe content package 310. At a step 326, one or more datasets 314 areextracted from the database 324 and stored in the data store 204.

Turning to FIG. 4, an illustrative process-flow diagram, labeledgenerally as 400, is illustrated depicting a method of automaticallycommunicating updated clinical information to a client that issubscribed to the clinical information in accordance with an embodimentof the present invention. The process-flow diagram includes a client410, a client 412, and a client 414. The client 410 is a human entity,and the clients 412 and 414 are computer systems and/or non-humanentities. The client 410 is subscribed to one or more of the datasets434, 436, and 438. At a step 460, upon receiving a request (not shown)from client 410, one or more of the datasets 434, 436, and 438 aredelivered to the client 410. Similarly, at a step 450, informationcontained in the database 432, and extracted from content package 430,may be integrated into an out-of-system dataset 442. The information iscommunicated to the out-of-system dataset 442 directly and fed at steps452 and 454 to the two separate systems 412 and 414, respectively. Theraw data stored in database 432 is integrated into the out-of-systemdataset 442 by the process management component 220. In one embodiment,the raw data stored in database 432 is integrated into dataset 442because the process management component 220 recognizes that the client412 and 414 are subscribed to the raw data and the raw data is notalready stored in the dataset 442.

Turning to FIG. 5, an illustrative flow diagram, labeled generally as500, depicts a method of facilitating the storage and distribution ofclinical content packages in accordance with an embodiment of thepresent invention. At a step 510, a first content package and a secondcontent package are received from a first content provider. The firstcontent package may contain a collection of clinical information anddocumentation, including one or more datasets. The datasets are singletables of data. The first and second content providers may includeproviders that have authored, generated, collected, and/or uploaded theclinical information. For example, the first content provider may be anelectronic health record provider. At a step 520, the first contentpackage and the second content package are stored.

At a step 530, a process management server, such as the processmanagement component 220 of FIG. 2, extracts at least a first datasetfrom the first content package and at least a second dataset from thesecond content package. At a step 540, the first dataset and the seconddataset are stored. At a step 550, a request to merge at least a portionof both the first dataset and the second dataset is received. Therequest may be received from a client, the first content provider, orsecond content provider via the online marketplace. In addition, therequest may be automated and received at the application component. At astep 560, the portions of the first and the second datasets are merged,thereby generating a third derivative dataset. Although not shown, thethird derivative dataset may be reformatted during the merging process.At a step 570, the third derivative dataset is stored. As well, at astep 580, one or more of the first dataset, the second dataset and thethird derivative dataset are published in an online marketplace,allowing at least one client access to view, edit, purchase or subscribeto the information contained therein.

Although not shown, additional steps in the method 500 are contemplated.Additional content packages may be received via the online marketplaceor an application component, such as application component 222 of FIG.2. The content packages, including the first and the second contentpackages, may be stored and published in the online marketplace inassociation with datasets contained therein or stored and publishedindividually.

As well, a request to purchase or subscribe to information stored in theUCA system 206 of FIG. 2 may be received via the online marketplace. Therequest may be specific (i.e., it may target a particular dataset) orgeneral (i.e., it may target a type of information expected to becontained in one or more datasets). If the request is specific, therequested content package or dataset is communicated the client. If therequest is general, a variety of search results and associated links todatasets and content packages may be returned to the client. At thatpoint, the client may select to view, purchase, subscribe to or edit thedesired content package or dataset. Additionally, updated informationmay be received, determined to correspond to a content package ordataset, and integrated into or saved as a new version of the associatedcontent package or dataset.

Turning to FIG. 6, a flow diagram labeled generally as 600 depicts amethod of automatically distributing updated content package informationto a client that is subscribed to the information. At a step 610, afirst content package is received from a first content provider. At astep 620, a request from a client to subscribe to at least a portion(e.g., a dataset) of the first content package is received. The clientmay initiate the request by performing a keyword search, setting filtersto narrow search results, and/or submitting an identifier associatedwith the content package to the online marketplace. In turn, anapplication server, such as the application component 222 of FIG. 2,retrieves the content package and delivers it to the client. In otherembodiments, the application server will automatically integrate updatedinformation into one or more out-of-system datasets belonging to clientssubscribed to the information and clients that have granted permissionto the UCA to access the out-of-system datasets.

At a step 630, updated information associated with the portion of thefirst content package may be received from a content provider and/or aclient. A process management server, such as the process managementserver 220 of FIG. 2, recognizes that the updated information has beenreceived. The process management server also recognizes that the clientis subscribed to the portion of the content package for which there isnow updated information. In response, the updated information iscommunicated to the client at a step 640. At a step 650, the updatedinformation is stored in association with at least the portion of thefirst content package.

Embodiments of the invention have been described to be illustrativerather than restrictive. It will be understood that certain features andsubcombinations are of utility and may be employed without reference toother features and subcombinations. This is contemplated by and iswithin the scope of the claims.

The invention claimed is:
 1. One or more non-transitory computer-storagemedia having computer-executable instructions embodied thereon that,when executed by a computing device, cause the computing device toperform a method of generating a regulatory compliant content packagethe method comprising: receiving a first content package from a firstcontent provider and a second content package from a second contentprovider; performing a structural validation of the first and secondcontent packages that determines the first and second content packagescontain a correct number of datasets, and performing a contentvalidation of the first and second content packages that determines thefirst and second content packages contain a correct type of clinicalinformation, wherein, if the first content package fails the structuralvalidation or the content validation, then a notification that the firstcontent package is deficient is sent to the first content provider andthe first content package is not published, and if the second contentpackage fails the structural validation or the content validation, thena notification that the second content package is deficient is sent tothe second content provider and the second content package is notpublished; based on the first and second content packages passingvalidation, mining a first dataset from the first content package and asecond dataset from the second content package; associating the firstdataset and the second dataset with a computer-usable reference to thefirst content package and the second content package, respectively,wherein the computer-usable reference links the first dataset to thefirst content package and the second dataset to the second contentpackage; extracting identifiers necessary to meet regulatoryrequirements from the first and second datasets; merging at least aportion of the first dataset and at least a portion of the seconddataset to generate a regulatory compliant content package, theregulatory compliant content package including the identifiers necessaryto meet regulatory requirements, wherein merging the portion of thefirst dataset and the portion of the second dataset includesreformatting the regulatory compliant content package to eliminateduplicate information and replace null field values; storing theregulatory compliant content package after eliminating the duplicateinformation and replacing the null field values; and publishing theregulatory compliant content package in an online marketplace.
 2. Theone or more computer-storage media of claim 1, further comprising:receiving a request for clinical information from a client via theonline marketplace; determining that the clinical information is storedin the first content package; extracting the clinical information fromthe first content package; and distributing the clinical information tothe client.
 3. The one or more computer-storage media of claim 1,further comprising: receiving a request from a client to subscribe toinformation stored within the first content package; receiving updatedinformation associated with the first content package from the firstcontent provider; storing the updated information in association withthe first content package; and automatically communicating anotification to the client indicating that the updated information hasbeen received.
 4. The one or more computer-storage media of claim 3,further comprising: receiving a request for the updated information fromthe client; and distributing the updated information to the client. 5.The one or more computer-storage media of claim 4, further comprising:replacing at least a portion of the first content package with theupdated information, thereby generating a new version of the firstcontent package; and publishing the new version of the first contentpackage on the online marketplace.
 6. One or more non-transitorycomputer-storage media having computer-executable instructions embodiedthereon that, when executed by a computing device, cause the computingdevice to perform a method of generating and distributing a regulatorycompliant content package to a client that is subscribed to theinformation, the method comprising: determining that the client issubscribed to at least a portion of a regulatory compliant contentpackage; generating the regulatory compliant content package, whereingenerating the regulatory compliant content package comprises: updatinga first content package with updated information associated with thefirst content package received from a first content provider, updating asecond content package with updated information associated with thesecond content package received from a second content provider,performing a structural validation of the updated first content packageand the updated second content package, wherein the structuralvalidation determines the updated first and the updated second contentpackages contain a correct number of datasets, performing a contentvalidation of the updated first content package and the updated secondcontent package, wherein the content validation determines the updatedfirst and the updated second content packages contain a correct type ofclinical information, merging at least a portion of the updated firstcontent package and at least a portion of the updated second contentpackage to form a derivative content package, wherein merging theportion of the updated first content package and the portion of theupdated second content package includes reformatting the derivativecontent package to eliminate duplicate information and replace nullfield values, linking a first dataset to the first content package andlinking a second dataset to the second content package with acomputer-usable reference, extracting from the updated first contentpackage and the updated second content package identifiers necessary tomeet regulatory requirements, and mapping the identifiers necessary tomeet regulatory requirements onto the derivative content package,resulting in the regulatory compliant content package; storing theregulatory compliant content package after eliminating the duplicateinformation and replacing the null field values; and distributing theregulatory compliant content package to the client.
 7. The one or morecomputer-storage media of claim 6, wherein one or more of the firstcontent package, the second content package, the derivative contentpackage, or the regulatory compliant content package are published in anonline marketplace.
 8. The one or more computer-storage media of claim6, wherein the at least the portion of the first content packageincludes at least one dataset of clinical information associated withthe first content package.
 9. A system for delivering regulatorycompliant content from a content provider to a client, the systemcomprising: a computing device associated with an application server anda process management server, the application server and the processmanagement server having one or more processors and one or morecomputer-storage media; and a data store coupled to the applicationserver, wherein the application server: receives a request forregulatory compliant clinical information; determines that theregulatory compliant clinical information is associated with at least aportion of a first content package and at least a portion of a secondcontent package; performs a structural validation of the first andsecond content packages that determines the first and second contentpackages contain a correct number of datasets, and performs a contentvalidation of the first and second content packages that determines thefirst and second content packages contain a correct type of clinicalinformation; if the first content package and the second content packageare successfully validated based on the structural validation and thecontent validation, then extract from the first content package and thesecond content package regulatory compliant identifiers; maps at least aportion of the first content package and the second content package,including the regulatory identifiers, to a derivative dataset, whereinthe derivative dataset comprises the regulatory compliant clinicalinformation requested; formats the derivative dataset to eliminateduplicate information; stores the derivative dataset after eliminatingthe duplicate information; links the first content package to thederivative dataset and the second content package to the derivativedataset; and provides to the client the derivative dataset comprisingthe regulatory compliant clinical information.
 10. The system of claim9, wherein the process management server publishes the first contentpackage in an online marketplace.
 11. The system of claim 9, wherein theprocess management server publishes the regulatory compliant clinicalinformation in an online marketplace.
 12. The one or morecomputer-storage media of claim 1, wherein the computing device alsoperforms the step of removing duplicate data from the first contentpackage and the second content package or from the first dataset and thesecond dataset.
 13. The one or more computer-storage media of claim 1,wherein the computing device also performs the step of providingeditorial tools to the first content provider, the editorial toolsconfigured to allow the first content provider to edit the first contentpackage or the first dataset.
 14. The one or more computer-storage mediaof claim 1, wherein the first and second content packages are associatedwith prescription drug information.
 15. The one or more computer-storagemedia of claim 14, wherein the identifiers necessary to meet regulatoryrequirements are drug identifiers.
 16. The one or more computer-storagemedia of claim 6, wherein the identifiers necessary to meet regulatoryrequirements comprise one or more of generic drug identifiers, drugsynonym identifiers, product-level identifiers, multiple ingredientgeneric drug identifiers, single ingredient generic drug identifiers,precise single ingredient generic drug and salt identifiers, ormedication brand name identifiers.
 17. The one or more computer-storagemedia of claim 6, wherein the computing device also performs the step ofreceiving a request from a client to subscribe to at least a portion ofthe regulatory compliant content package.
 18. The system of claim 9,wherein the application server further respectively sends a notificationof a deficiency to a first content provider associated with the firstcontent package or to a second content provider associated with thesecond content package if the first content package or the secondcontent package is not successfully validated.
 19. The one or morecomputer-storage media of claim 1, wherein the extracted identifiers aredrug identifiers, the drug identifiers including at least one of genericdrug identifiers, drug synonym identifiers, or produce levelidentifiers.
 20. The one or more computer-storage media of claim 19,further including mapping the drug identifiers to at least one ofmultiple ingredient generic drug identifiers, single ingredient genericdrug identifiers, precise single ingredient generic drug and saltidentifiers, or medication brand name identifiers.